home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
DS-CD ROM 2 1993 August
/
DS CD-ROM 2.Ausgabe (August 1993).iso
/
programm
/
ds0257
/
lib.exe
/
PARMS.LIB
< prev
next >
Wrap
Text File
|
1992-02-02
|
2KB
|
179 lines
#IF !LIB4A86
#ELSE
#IF !INTERN_LIB4A86_S
INTERN_LIB4A86_S EQU 01
JMP START
#ENDIF
#ENDIF
CR EQU 0DH
TAB EQU 09H
BLANK EQU ' '
#IF !PARMTRENNER1
PARMTRENNER1 EQU '/'
#ENDIF
#IF !PARMTRENNER2
PARMTRENNER2 EQU '-'
#ENDIF
V0 DB 0
V2 DB 0
SAVEPARAMS DB 0,80H DUP 0DH
Q001 EQU ''''
Q002 EQU '`'
Q003 EQU '"'
PARAMSTR:
PUSH DS,SI,CX,AX
OR AL,AL
IF Z INC AL
CALL INTERN_GETPARM
MOV CL,0
JNZ >L9
INC CL
PUSH DI
INC DI
XOR CH,CH
LODSB
CMP AL,CR
JE >L91
CMP AL,V2
JE >L91
L0:
INC CH
STOSB
LODSB
CALL INTERN_CHECKTRENNER
JNZ L0
L91:
POP DI
L9:
OR CL,CL
MOV ES:[DI],CH
POP AX,CX,SI,DS
RET
PARAMCOUNT:
PUSH DS,SI,CX
MOV AL,0FFH
CALL INTERN_GETPARM
MOV AL,CL
POP CX,SI,DS
RET
INTERN_GETPARM:
CLD
MOV SI,OFFSET SAVEPARAMS
MOV DS,CS
MOV V2,0
CMP V0,0
JNE >L1
PUSH BX,SI,DS,ES,DI
MOV AH,062H
INT 021H
MOV DS,BX
MOV ES,CS
MOV DI,SI
MOV SI,080H
MOV CL,[SI]
XOR CH,CH
INC CX
REP MOVSB
POP DI,ES,DS,SI,BX
MOV V0,0FFH
L1:
CMP B[SI],0
JNZ >L1
OR AL,01
RET
L1:
INC SI
XOR CX,CX
MOV AH,AL
L0:
LODSB
L00:
MOV V2,0
CMP AL,CR
JE >L9
CMP AL,Q001
JE >L001
CMP AL,Q002
JE >L001
CMP AL,Q003
JNE >L002
L001:
MOV V2,AL
JMP >L003
L002:
CMP AL,BLANK
JE L0
CMP AL,TAB
JE L0
L003:
INC CL
DEC AH
JZ >L9
L01:
LODSB
CALL INTERN_CHECKTRENNER
JNE L01
CMP AL,V2
IF E LODSB
JMP L00
L9:
CMP AL,V2
IF NE DEC SI
OR AH,AH
RET
INTERN_CHECKTRENNER:
CMP V2,0
JE >L0
CMP AL,V2
JE >L1
CMP AL,CR
JMP >L1
L0:
CMP AL,CR
JE >L1
CMP AL,BLANK
JE >L1
CMP AL,TAB
JE >L1
CMP AL,PARMTRENNER1
JE >L1
CMP AL,PARMTRENNER2
JE >L1
CMP AL,Q001
JE >L1
CMP AL,Q002
JE >L1
CMP AL,Q003
L1:
RET
#IF !INTERN_CMARK0
INTERN_CMARK0 EQU 01H
INTERN_CMARK1:
PUSH BP
MOV BP,SP
MOV BX,06H
SUB CH,[BP+SI]
SUB AH,[BX+SI]
DEC SP
DEC CX
INC DX
XOR AL,041H
CMP B[02820H],DH
INC BX
SUB W[BX+SI],SP
INC DX
CS AND B[BP+DI+043H],DL
DEC AX
INC BP
DEC BP
DEC BP
INC BP
PUSH DX
AND B[BP+SI],CH
SUB CH,[BP+SI]
POP DX
MOV SP,BP
POP BP
RET
#ENDIF